Methods, systems, and devices for bandwidth conservation

ABSTRACT

Methods, systems, and devices are disclosed for conserving bandwidth. Inputs to a user interface are accumulated and compared to a historical pattern of inputs. When inputs are accumulated, the method predicts that a user is present. When inputs are expected, but no inputs are received, then the method predicts that no user is present. Actions are them implemented to and conserve bandwidth.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional PatentApplication 60/713,487, filed Sep. 1, 2005 and entitled “TV BandwidthConservation Based On User Presence Detection Using Remote Control,” andincorporated herein by reference in its entirety.

NOTICE OF COPYRIGHT PROTECTION

A portion of the disclosure of this patent document and its figurescontain material subject to copyright protection. The copyright ownerhas no objection to the facsimile reproduction by anyone of the patentdocument or the patent disclosure, but otherwise reserves all copyrightswhatsoever.

BACKGROUND

This application generally relates to interactive multimediadistribution systems and, more particularly, to presence detection insuch systems.

Bandwidth is becoming a problem in the communications industry. Assubscribers demand more and more content, higher definition services,interactive services, and data services, the existing networkinfrastructure has trouble supplying adequate bandwidth. The industry ishard at work identifying new ways of increasing bandwidth. The industryis also striving to reduce wasted bandwidth.

An “always on” set-top box is one example of wasted bandwidth. An“always on” set-top box continually receives content, even while no oneis watching television. When the set-top box remains powered “on” andtuned to a channel, the set-top box consumes bandwidth. Often times,however, that channel is not watched and bandwidth is wasted. Many cablesubscribers, for example, forget to, or are unable to, turn “off” theirset-top box. Many subscribers power “off” the television, yet theset-top box remains powered “on” and receiving content. It's notuncommon for a set-top box to continually receive a video stream whilethe subscriber sleeps for hours and/or vacations for days. No one iswatching the content, yet the set-top box is consuming networkbandwidth. Because communications networks need to efficiently utilizebandwidth, there is a need in the art for reducing bandwidthconsumption.

SUMMARY

The aforementioned problems, and other problems, are reduced, accordingto exemplary embodiments, by methods, systems, and devices that conservebandwidth in communications networks. These exemplary embodimentsdescribe how to reduce the occurrences of wasted bandwidth. Theseexemplary embodiments minimize bandwidth consumption of an establishedsession by detecting the physical presence of a user. If the user isphysically present, then the exemplary embodiments deliver a stream ofdata to a multimedia electronic device, and a bit rate of the stream ofdata is appropriate to the needs of the electronic device. If, however,the physical presence of the user cannot be detected, inferred, orpredicted, then there is little or no need for a full-resolution feed tothe electronic device. The exemplary embodiments, instead, degrade oreven terminate the stream of data to conserve bandwidth in the network.The terms “degrade,” “degraded,” “degradation,” and other variants meanthe resolution of the stream of data is reduced to conserve bandwidth.When the stream of data is degraded, the degraded stream of data stillpreserves an established data session, yet the degraded stream of datahas a reduced bit rate to reduce bandwidth consumption. When thephysical presence of the user is again detected or inferred, then theexemplary embodiments restore the stream of data to its full-resolutiondata rate. The exemplary embodiments, therefore, reduce the occurrencesof wasted bandwidth.

Exemplary embodiments conserve bandwidth. Inputs to a user interface areaccumulated and compared to a historical pattern of inputs. Stateinformation is also received, and the state information includesadvertisement insertion information. When inputs are accumulated, themethod predicts that a user is present. When inputs are expected, but noinputs are received during transition to an advertisement, thenexemplary embodiments infer that no user is present. Because the user isnot present, exemplary embodiments may then conserve bandwidth.

The exemplary embodiments also include a device that conservesbandwidth. The device comprises a processor receiving inputs via a userinterface. The processor accumulates the inputs in memory and comparesthe accumulated inputs to a historical pattern of inputs. When inputsare accumulated, then the processor predicts that a user is present.When inputs are expected, but no inputs are received, then the processorpredicts that no user is present and conserves bandwidth.

The exemplary embodiments also include a computer program product forconserving bandwidth. The computer program product comprises acomputer-readable medium and a presence detection application stored onthe computer-readable medium. The presence detection applicationcomprises computer code for performing the steps: i) accumulating inmemory inputs to a user interface; ii) comparing the accumulated inputsto a historical pattern of inputs; iii) when inputs are accumulated,predicting that a user is present; and iv) when inputs are expected, butno inputs are received, then predicting that no user is present andconserving bandwidth.

Other systems, methods, and/or devices according to the exemplaryembodiments will be or become apparent to one with skill in the art uponreview of the following drawings and detailed description. It isintended that all such additional systems, methods, and/or devices beincluded within this description, be within the scope of the exemplaryembodiments, and be protected by the accompanying claims.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features, aspects, and advantages of the exemplaryembodiments are better understood when the following DetailedDescription is read with reference to the accompanying drawings,wherein:

FIG. 1 is a simplified schematic illustrating an operating environment,according to exemplary embodiments;

FIG. 2 is a more detailed schematic illustrating exemplary embodiments;

FIG. 3 is a schematic illustrating a bandwidth prompt 50, according toeven more exemplary embodiments;

FIG. 4 illustrates a reduced resolution message, according to yet moreexemplary embodiments;

FIG. 5 is a schematic illustrating transmission of a reduced resolutionstream of data, according to exemplary embodiments;

FIG. 6 is a schematic illustrating local retrieval of content, accordingto more exemplary embodiments;

FIG. 7 is a schematic illustrating the use of user preferences whenconserving bandwidth, according to yet more exemplary embodiments;

FIG. 8 is a schematic illustrating the restored, fill-resolution stream12 of data, according to exemplary embodiments;

FIG. 9 is a schematic illustrating the use of tags, according to stillmore exemplary embodiments;

FIG. 10 is a schematic illustrating an alternative operating environmentfor the presence detection application 18, according to more exemplaryembodiments;

FIGS. 11-12 are schematics illustrating solutions for a broadband remoteaccess server (BRAS), according to even more exemplary embodiments;

FIG. 13 is a schematic illustrating various types of electronic devices,according to exemplary embodiments;

FIG. 14 is a schematic illustrating various types of multimedia devices,according to exemplary embodiments;

FIGS. 15-17 are schematics further illustrating the electronic devicestoring the presence detection application, according to exemplaryembodiments;

FIG. 18 is a schematic further illustrating the electronic device,according to exemplary embodiments; and

FIG. 19 is a flowchart illustrating a method of conserving bandwidth,according to more exemplary embodiments.

DETAILED DESCRIPTION

The exemplary embodiments now will be described more fully hereinafterwith reference to the accompanying drawings. The reader shouldrecognize, however, that the exemplary embodiments may be embodied inmany different forms and should not be construed as limited to theembodiments set forth herein. These embodiments are provided so thatthis disclosure will be thorough and complete and will fully convey thescope of the exemplary embodiments. Moreover, all statements hereinreciting exemplary embodiments, as well as specific examples thereof,are intended to encompass both structural and functional equivalentsthereof. Additionally, it is intended that such equivalents include bothcurrently known equivalents as well as equivalents developed in thefuture (i.e., any elements developed that perform the same function,regardless of structure).

Thus, for example, it will be appreciated by those of ordinary skill inthe art that the diagrams, schematics, illustrations, and the likerepresent conceptual views or processes illustrating systems and methodsof the exemplary embodiments. The functions of the various elementsshown in the figures may be provided through the use of dedicatedhardware as well as hardware capable of executing associated software.Similarly, any switches shown in the figures are conceptual only. Theirfunction may be carried out through the operation of program logic,through dedicated logic, through the interaction of program control anddedicated logic, or even manually, the particular technique beingselectable by the entity implementing the exemplary embodiments. Thoseof ordinary skill in the art further understand that the exemplaryhardware, software, processes, methods, and/or operating systemsdescribed herein are for illustrative purposes and, thus, are notintended to be limited to any particular named manufacturer.

The exemplary embodiments describe methods, systems, and devices thatconserve bandwidth in communications networks. These exemplaryembodiments describe how a multimedia service provider can reduce theoccurrences of wasted bandwidth. These exemplary embodiments minimizebandwidth consumption of an established session by detecting thephysical presence of a user. If the user is physically present, then theexemplary embodiments deliver a stream of data to a multimediaelectronic device, and a bit rate of the stream of data is appropriateto the needs of the electronic device. If, however, the physicalpresences of the user cannot be detected, inferred, or predicted, thenthere is little or no need for a full-resolution feed to the electronicdevice. The exemplary embodiments, instead, degrade or even terminatethe stream of data to conserve bandwidth in the network. The terms“degrade,” “degraded,” “degradation,” and other variants mean theresolution of the stream of data is reduced to conserve bandwidth. Whenthe stream of data is degraded, the degraded stream of data stillpreserves an established data session, yet the degraded stream of datahas a reduced bit rate to reduce bandwidth consumption. When thephysical presence of the user is again detected or inferred, then theexemplary embodiments restore the stream of data to its full-resolutiondata rate. The exemplary embodiments, therefore, reduce the occurrencesof wasted bandwidth.

FIG. 1 is a simplified schematic illustrating an operating environment,according to exemplary embodiments. FIG. 1 shows an electronic device 10receiving a stream 12 of data via a communications network 14. Theelectronic device 10 can be any device, such as a set-top box, atelevision, or an integrated television and set-top box. The electronicdevice 10 may also be an analog/digital recorder, CD/DVDplayer/recorder, audio equipment, receiver, tuner, and/or any otherconsumer electronic device. The electronic device 10 may also includeany computer, peripheral device, camera, modem, storage device,telephone, personal digital assistant, and/or mobile phone. The stream12 of data may be any RF and/or digital content, such astelevision/cable programming, mpg streams, or any other content. Thecommunications network 14 may be a cable network operating in theradio-frequency domain and/or the Internet Protocol (IP) domain. Thecommunications network 14, however, may also include a distributedcomputing network, such as the Internet (sometimes alternatively knownas the “World Wide Web”), an intranet, a local-area network (LAN),and/or a wide-area network (WAN). The communications network 14 mayinclude coaxial cables, copper wires, fiber optic lines, and/orhybrid-coaxial lines. The communications network 14 may even includewireless portions utilizing any portion of the electromagnetic spectrumand any signaling standard (such as the IEEE 802 family of standards).

As FIG. 1 shows, the electronic device 10 also detects or monitors thephysical presence of a user. The user is generally a person in thevicinity of the electronic device (such as in the same room) and who iswatching, listening to, or otherwise experiencing a movie, game, TVprogram, or other content represented by the stream 12 of data. The usermay be a customer, a subscriber, a viewer, a listener, or any otherperson experiencing content delivered to the electronic device 10. Apresence detection application 18 is a computer program that infers thepresence of the user. The presence detection application 18 stores inmemory 20 of the electronic device 10 and monitors or detects when theuser is present. The term “present” implies the user is watching,listening to, or otherwise experiencing the content represented by thestream 12 of data. If the user is experiencing the stream 12 of data,then the bandwidth allocated to that stream 12 of data is maintained.If, however, the user is not watching or otherwise experiencing thedelivered stream 12 of data, then perhaps bandwidth is being wasted. Thepresence detection application 18, then, may (or may not) conservebandwidth.

The presence detection application 18 predicts the presence of the user.The presence detection application 18 monitors inputs to the electronicdevice 10 and predicts when the user is present, thus justifying theallocated bandwidth. The presence detection application 18, for example,monitors inputs received via a user interface 22. The electronic device10 includes the user interface 22, and the user interface 22 providesdirect or menu-driven access to functions, features, and settings forthe electronic device 10. The user interface 22, for example, may be akeyboard, a keypad, control panel, soft-touch control buttons,voice-activated or voice-recognition software, graphical user interface,or any other means for inputting commands to the electronic device 10.Although the user interface 22 may be any means for inputting commands,FIG. 1 illustrates the user interface 22 as a wireless remote control24. The user interface 22 may include any combination of alphabetic,numeric, and iconic character buttons. The user interface 22 may alsoinclude cursor movement buttons that enable the user to scroll and tosequence through menu options. If the user is making inputs via the userinterface 22, then those inputs are a positive indication that the useris present and the allocated bandwidth is justified. If, however, noinputs are received over a period of time, then, as the followingparagraphs explain, the presence detection application 18 may or may notinfer that the user is or is not present. If the user is not watching,listening to, or otherwise experiencing the stream 12 of data, then theallocated bandwidth for the stream 12 of data may be reduced to conservenetwork resources.

FIG. 2 is a more detailed schematic illustrating exemplary embodiments.The electronic device 10 again receives the stream 12 of data via thecommunications network 14. Although the electronic device 10 may be anydevice, here the electronic device 10 is shown as a set-top box 30. Theset-top box 30 receives and decodes the stream 12 of data. The presencedetection application 18 is an algorithm stored in the memory 20 of theset-top box 30, and the presence detection application 18 monitors ordetects when the user is present. If the presence detection application18 infers that the user is present, then the presence detectionapplication 18 maintains the full-resolution of the stream 12 of data.If, however, the presence detection application 18 infers that the useris not watching, listening to, or otherwise experiencing the stream 12of data, then the allocated bandwidth for the stream 12 of data may bereduced to conserve network resources.

As FIG. 2 illustrates, the presence detection application 18 monitorsinputs received via the user interface 22. As the user makes channelchanges, cursor movements, volume commands, and other inputs via theuser interface 22, the presence detection application 18 accumulatesthose inputs in the memory 20. Again, while the user interface 22 may bea keyboard, keypad, control panel or other means for inputting commands,FIG. 2 illustrates the user interface 22 as the remote control 24. Aseach input to the remote control 24 is received, the input is stored inthe memory 20. The inputs may be stored as a log 32, with each entry 34describing at least the input and the time the input was entered,received, or logged. The inputs may be sequentially stored throughouttime. More likely, however, the inputs are stored during any period oftime from seconds to years, depending on the amount of available memory.When the memory allocated to the log 32 is filled, the log 32 wouldsequentially replace the earliest entry with the newest entry. The usermay even configure the memory 20 and the log 32 to select the amount ofmemory allocated to the log 32, and the presence detection application18 may prompt the user to increase memory allocation when the log 32 isnearly fill.

The presence detection application 18 may also predict presence usinghistorical patterns. These historical patterns tell the presencedetection application 18 when to expect activity at the user interface22. When activity is expected, and inputs to the user interface 22 arereceived, then the presence detection application 18 may infer the useris present, thus justifying the allocated bandwidth. If, however, noinputs are received when expected, then perhaps the user is not presentand bandwidth is being wasted.

As FIG. 2 also illustrates, the presence detection application 18 mayaccess a historical pattern 36 of inputs. The historical pattern 36 ofinputs may be stored in a database that is locally maintained in thememory 20 of the electronic device 10. The historical pattern 36 ofinputs may be additionally or alternatively be stored at a remotelocation, such as a remote server 38 communicating with the electronicdevice 10 via the communications network 14. However the historicalpattern 36 of inputs is accessed, the historical pattern 36 of inputsstores historical information describing behavioral patterns of inputsto the user interface 22. The historical pattern 36 of inputs may beassociated with the individual user, such as a learned pattern of inputevents or some interval of time describing historical use associatedwith the user. The historical pattern 36 of inputs, however, mayadditionally or alternatively be a pattern of inputs collected from asample of users or collected from a population of users across a node,branch, region, or other grouping. The presence detection application 18may even itself analyze the log 32 of inputs, looking for any patternsof usage.

As the user makes inputs via the user interface 22 (e.g., the remotecontrol 24), the presence detection application 18 may analyze thoseinputs for trends. The user, for example, may have a history of makinginputs after a transition in content. When content programmingtransitions to an advertisement, the user may have a history of makingchannel or content changes after the transition. If the contenttransitions to an advertisement, but no inputs are received, thenperhaps the user is not present and bandwidth is being wasted. Thehistorical pattern 36 of inputs may, likewise, also indicate that, at acertain time of day, the user interface 22 usually receives inputs. Theuser, for example, may “surf” content near the top of the hour, whencontent providers typically transition programming offerings. If thattime of day passes with little or no inputs, then perhaps again the useris not present and bandwidth is being wasted. The presence detectionapplication 18 may thus predict presence of the user by comparinghistorical patterns to actual inputs received via the user interface 22.

The presence detection application 18 may also predict presence usingstate information 40. This state information 40 describes a currentstate of the stream 12 of data being received at the electronic device10. The state information 40 describes, at any particular moment intime, the content represented by the stream 12 of data. The stateinformation 40, for example, may describe programming timing andindicate that the stream 12 of data is currently near the middle (or anyother point) of a movie, TV program, song, or other content. The stateinformation 40 may also indicate top of the hour, bottom of the hour, orother advertisement insertion slots. The state information 40 may betransmitted by a service provider, content provider, head end, server,or any other entity and received at the electronic device 10 via thecommunications network 14. The state information 40 may be transmittedwith the stream 12 of data, or the state information 40 may beseparately transmitted as a timing signal. However the state information40 is received, the presence detection application 18 may receive andanalyze this state information 40 when predicting presence.

The state information 40 may include a program control informationsignal 42. The program control information signal 42 may be deliveredwith programming and other content received via the communicationsnetwork 14. The program control information signal 42 may be transmittedby a content provider, a network operations center, a headend, or anyother entity. The program control information signal 42 may contain adescription of the content or packages of content, such as channelnumber, program title, program length, program category, and start/endtimes. The program control information signal 42 may also contain menucontent, such as menu locations for messages, graphics and video, menucolors, text fonts, sizes, and styles, and other menu information. Theprogram control information signal 42 may also contain commands for theelectronic device 10 (e.g., the set-top box 30) and other informationrelevant to signal transmission.

As FIG. 2 also illustrates, the state information 40 may additionally oralternatively include advertisement insertion information 44. Theadvertisement insertion information 44 is used when inserting anadvertisement into the stream 12 of data. The advertisement insertioninformation 44 may be inserted at the headend and sent via thecommunications network 14 or embedded in the stream 12 of data (or otherprogram signal). The advertisement insertion information 44, forexample, may include “Q-tones” or other information that identifies apoint in the stream 12 of data in which an advertisement is inserted.The presence detection application 18 may interface with an MPEG decoder46 that is capable of detecting, decoding, and/or or hearing MPEGQ-tones within the stream 12 of data. As those of ordinary skill in theart understand, the Q tone provides the MPEG decoder 46 and/or thepresence detection application 18 with an advance indication of a pointin the content where an advertisement is inserted. The Q tone provides aset time (e.g., 30 or 60 seconds) after which the advertisement shouldbegin. Because Q-tones are well understood by those of ordinary skill inthe art, Q-tones will not be further explained.

The presence detection application 18 may also predict presence usingmodal information 48. This modal information 48 describes a current modeof operation for the electronic device 10. The modal information 48, forexample, may indicate that the electronic device 10 is currentlyoperating in a broadband mode (e.g. receiving the stream 12 of data viaa broadband connection to the communications network 14). The modalinformation 48 could additionally or alternatively indicate theelectronic device 10 is operating in a broadcast mode. The electronicdevice 10, for example, may be wirelessly receiving the stream 12 ofdata via an AM/FM/VHF/UHF transmission, via a CDMA/TDMA/GSM or variantsignaling standard, via an industrial, scientific, and medical band(ISM) (e.g., BLUETOOTH®) transmission, via a satellite transmission, viaany of the IEEE 802 family of standards, or via any portion of theelectromagnetic spectrum. The modal information 48 may additionally oralternatively indicate the electronic device 10 is operating in anauxiliary mode, such as receiving auxiliary content from a DVD/CD-ROM,VHS, digital recorder, or other memory storage component. The modalinformation 48 may additionally or alternatively indicate the electronicdevice 10 is operating in a gaming mode and, thus, receiving and/orvisually or audibly presenting a game. Whatever the mode of operation,the presence detection application 18 may use this modal information 48when predicting the presence of the user.

The presence detection application 20 then uses any of theabove-described information sources to predict presence. The presencedetection application 20 receives and analyzes the inputs received viathe user interface 22, the historical pattern 36 of inputs, the stateinformation 40, and/or the modal information 48. The presence detectionapplication 20 then intelligently predicts whether the user is currentlypresent and experiencing the stream 12 of data.

An example provides additional explanation. Suppose the electronicdevice 10 is in a broadband mode of operation and is receiving content.The state information 40 indicates the stream 12 of data is nearing themiddle of a three-hour movie. The state information 40 also includestiming information indicating that a top of the hour is approaching. Atthe top of the hour, the presence detection application 20 knows toexpect inputs to the user interface 22, based on trends from thehistorical pattern 36 of inputs. The historical pattern 36 of inputs,for example, indicates that the user, or a group of users, commonlymakes “surfs” or makes channel changes at the top of the hour, whenprogramming transitions to advertisements. Because the user is in themiddle of a commercial-free movie, however, the user may not normally“surf” content at the top of the hour. If the presence detectionapplication 20 heeded the historical information, the lack of inputs atthe top of the hour could erroneously indicate that the user is notpresent and that bandwidth is being wasted.

Yet the presence detection application 20 is more intelligent. Becausethe user is in the middle of a movie, the presence detection application18 may ignore historical information describing top-of-the-hour inputs.As the presence detection application 20 builds the log 32 of inputs,each entry 34 may be correlated with the corresponding state information40 and with the corresponding modal information 48. Such information maydescribe the operation of the electronic device 10, such as whether theinput was made after transition to a commercial, during acommercial-free movie, or during a gaming mode. If the state information40 indicates the electronic device 10 is receiving a movie withoutinserted ads, the presence detection application 18 may decide to ignorehistorical information. That is, if the state information 40 does notinclude ad insertion information, the presence detection application 18should not expect inputs to the user interface 22 at the top of thehour, at the bottom of the hour, or at other times of typical adinsertion. The presence detection application 18, instead, maintains thebandwidth allocated to the stream 12 of data, knowing that the user isin the middle of a commercial-free movie.

The presence detection application 18 thus helps conserve bandwidth.When the presence detection application 18 infers that the user ispresent, the allocated bandwidth for the stream 12 of data may bejustified and maintained. The presence detection application 18 makes nochange in the data rate of the stream 12 of data. That is, the stream 12of data is continually delivered at its full resolution, whatever thatfull resolution may be. When, however, the presence detectionapplication 18 infers that the user is not present, actions are taken toconserve bandwidth. If the presence detection application 18 cannotdetect or infer the presence of the user, then there may be no need tocommunicate a high-bandwidth stream 12 of data from the communicationsnetwork 14. As the following paragraphs will explain, when the presenceof the user cannot be predicted or detected, the presence detectionapplication 18 causes degradation in the stream 12 of data. The stream12 of data may be degraded to a reduced-resolution version to conservebandwidth. The stream 12 of data may even be terminated.

FIG. 3 is a schematic illustrating a bandwidth prompt 50, according toeven more exemplary embodiments. When the presence detection application18 infers that the user is not present, here the presence detectionapplication 18 may visually and/or audibly cause a display device 52(such as a television or monitor) to produce the bandwidth prompt 50.The bandwidth prompt 50, for example, may visually and/or audiblypresent a message 54, notifying the user that the high-resolutionversion of the stream 12 of data is about to be degraded, or eventerminated, unless the user responds. The presence detection application18 may recognize any input via the user interface 22 as an affirmativeresponse, thus confirming full-resolution is desired. That is, if theuser makes any input (such as pushing a button on the remote control24), then the presence detection application 18 knows that the user istruly present and the high-resolution version of the stream 12 of datashould be maintained. When the bandwidth prompt 50 is presented, thepresence detection application 18 may even recognize any movement of theremote control 24 as an affirmative response. That is, perhaps theremote control 24 comprises an accelerometer or other movement orposition sensor that detects movements, and such movement affirmativelyindicates the user is present. The user interface 22 may additionally oralternatively comprise any means for sensing movement, such as a gravityswitch, a mercury switch, a GPS transmitter or receiver, an infraredtransmitter or receiver, any transmitter or receiver utilizing anyportion of the electromagnetic spectrum, or any device utilizing theDoppler effect. The bandwidth prompt 50 may include a visual and/oraudible timer that counts down the remaining time until degradation. Ifno response to the bandwidth prompt 50 is detected, then the presencedetection application 18 implements actions to reduce bandwidth.

FIG. 4 illustrates a reduced resolution message 56, according to yetmore exemplary embodiments. When the presence detection application 18infers that the user is not present, then bandwidth is possibly beingwasted. The presence detection application 18 may immediately takeactions to reduce bandwidth consumption. The presence detectionapplication 18 may additionally produce the bandwidth prompt (shown asreference numeral 50 in FIG. 3) to confirm the presence of the user.Regardless, when the presence detection application 18 is ready toconserve network resources, the presence detection application 18 sendsthe reduced resolution message 56 to a server 58. The stream 12 of datais sent by the server 58, and the reduced resolution message 56instructs the server 58 to reduce the resolution of the stream 12 ofdata. The server 58 receives the reduced resolution message 56 via thecommunications network 14.

FIG. 5 is a schematic illustrating transmission of a reduced resolutionstream 60 of data, according to exemplary embodiments. When the server58 receives the reduced resolution message 56, the server 58 implementsstrategies to conserve network resources. The reduced resolution message56 instructs the server 58 to reduce the resolution of the stream 12 ofdata. As FIG. 5 illustrates, the reduced resolution stream 60 of data isthen processed and sent from the server 58 to the set-top box 30 via thecommunications network 14. The reduced resolution stream 60 of data hasa reduced data rate measured in bytes per second. Because the reducedresolution stream 60 of data has a reduced data rate, the bandwidthallocated to the set-top box 30 may be reduced and reallocated to otheruses within the communications network 14. The reduced resolution stream60 of data may have reduced resolution audio and/or video portions toconserve bandwidth.

FIG. 6 is a schematic illustrating local retrieval of content, accordingto more exemplary embodiments. Here, when the presence detectionapplication 18 sends the reduced resolution message 56 to the server 58,the reduced resolution message 56 instructs the server 58 to terminatethe stream 12 of data. That is, the presence detection application 18instructs the server 58 to cease delivery of the full-resolution stream12 of data. The presence detection application 18, instead, locallyretrieves content from the memory 20 and causes that local content to bevisually and/or audibly presented to the user. When the presencedetection application 18 infers that the user is not present, thepresence detection application 18 ceases transmission of the stream 12of data for maximum reduction in bandwidth. The presence detectionapplication 18 then reverts to local content 62 retrieved from the localmemory 20. The local content 62 may be a movie, music, slide show,family photos, or any other file (having any format or extension). Thelocal content 62 still presents audio and/or video content, yet thelocal content 62 is not drawing or requiring bandwidth from thecommunications network 14. The local content 62 may be selected anddownloaded by a content provider, a service provider, or by a networkoperator. The local content 62 may also be selected and configurable bythe user.

The local content 62 may be advantageously selected. The presencedetection application 18, for example, may retrieve a promotion that islocally stored in the memory 20. The promotion encourages the user toselect or to tune to content, a product, or a service that might be ofinterest to the user. That content, product, or service could alsogenerate revenue for the network operator and/or the content provider.Perhaps, for example, the presence detection application 18 detects orinfers that the user is not present. The presence detection application18 may then terminate the stream 12 of data and, instead, retrieve apromotion channel from local memory. The promotion channel may promotevideo-on-demand services, special event programming, or otherpay-per-view programming that may appeal to the user. If the user ispresent and intrigued, the user may make a purchase.

The presence detection application 18 may implement other actions. Whenthe presence detection application 18 infers that the user is notpresent, then bandwidth is possibly being wasted. The presence detectionapplication 18 may immediately take actions to reduce bandwidthconsumption. The presence detection application 18 may assume the userhas left the room or fallen asleep and disable or “turn off” the screenand speakers. Whenever the presence detection application infers with ahigh probability that the user is not present, the presence detectionapplication 18 may lower the volume. If the user is present, the usershould be motivated to restore the volume or provoked to make some otherinput. The presence detection application 18 may be configured for otherscenarios that reduce bandwidth consumption.

FIG. 7 is a schematic illustrating the use of user preferences whenconserving bandwidth, according to more exemplary embodiments. Here,when the presence detection application 18 takes actions to conservebandwidth, the presence detection application 18 consults a database 64of user preferences. The database 64 of user preferences stores one ormore preferences 66 associated with the user. The database 64 of userpreferences may be locally stored in the memory 20 of the electronicdevice 10. The database 64 of user preferences may be additionally oralternatively be stored at a remote location, such as a remote server 68communicating with the electronic device 10 via the communicationsnetwork 14. These preferences 66 describe how the user wishes the stream12 of data to be degraded when conserving bandwidth. The user, forexample, may have a preference for an audio-only version of the stream12 of data, such that video portions are discarded or otherwise nottransmitted. The user may alternatively prefer a grainy video portionand/or a smaller sized resolution version of the stream 12 of data. Theuser may prefer that the stream 12 of data be terminated. How the userspecifies their preferences may depend on economic factors. If, forexample, the user pays a per minute charge for broadband usage, the usermay prefer that the stream 12 of data be terminated when presence is notdetected. If the user pays according to data rate, then the user mayprefer that the stream 12 of data be degraded, or again even terminated,when conserving bandwidth. The network operator, service provider, orcontent provider may even provide incentives to conserve bandwidth.These incentives, for example, may cause the user to agree totermination or to degradation during peak demand times, designatedevents, network outages, or any other circumstances.

FIG. 8 is a schematic illustrating the restored, full-resolution stream12 of data, according to exemplary embodiments. The presence detectionapplication 18 may continually monitor for the presence of the user.When the presence of the user is redetected, or inferred, then thepresence detection application 18 causes a restoration in the data rate(e.g., bytes per second) of stream 12 of data. The presence detectionapplication 18 sends a restoration message 70 to the server 58, and therestoration message 70 instructs the server 58 to restore thefull-resolution data rate of the stream 12 of data. When the server 58receives the restoration message 70, the server 58 resumes sending thefull-resolution version of the stream 12 of data.

The presence detection application 18 may also send the restorationmessage 70 upon any input via the user interface 22. As the aboveparagraphs explained, the presence detection application 18 mayrecognize any input via the user interface 22 as an affirmativeindication of the presence of the user. As the electronic device 10receives the reduced resolution stream of data (shown as referencenumeral 60 in FIG. 5), the presence detection application 18 continuallymonitors for the presence of the user. Should the presence detectionapplication 18 infer the presence of the user, then the presencedetection application 18 restores the full-resolution version of thestream 12 of data. When, for example, the user makes any input via theuser interface 22 (such as pushing a button on the remote control 24)after bandwidth is conserved, then the presence detection application 18knows that the user is present and the high-resolution version of thestream 12 of data should be restored. The user, as earlier explained,may simply move the remote control 24 to indicate his or her presence.Such movement causes the presence detection application 18 to send therestoration message 70, thus instructing the server 58 to resume sendingthe full-resolution version of the stream 12 of data.

FIG. 9 is a schematic illustrating the use of tags, according to stillmore exemplary embodiments. Recall that when the presence detectionapplication 18 infers that the user is not present, the presencedetection application 18 sends the reduced resolution message 56 to theserver 58. The reduced resolution message 56 instructs the server 58 toreduce the resolution of the stream 12 of data. The server 58 thenprocesses and sends the reduced resolution stream of data (shown asreference numeral 60 in FIG. 5). The reduced resolution stream of datahas a reduced data rate measured in bytes per second. Here, however, thepresence detection application 18 also instructs the server 58 to markor tag the full-resolution version of the stream 12 of data. Thefull-resolution version of the stream 12 of data is tagged at the pointit was interrupted. A tag 72 is inserted into the full-resolutionversion of the stream 12 of data at the point in time at whichdegradation occurs. If the presence detection application 18 haserred—that is, the presence detection application 18 has incorrectlyinferred that the user is not present—then the presence detectionapplication 18 can return the user to the point in the stream 12 of dataprior to degradation. Should the user affirmatively respond to thebandwidth prompt (shown as reference numeral 50 in FIG. 3), make aninput via the user interface 22, move the remote control 24, or anyother action that indicates the user is present, then thefull-resolution version of the stream 12 of data is resumed from themoment or time denoted by the tag 72. The user need only pick up or movethe remote control 24 and the presence detection application 18 restoresto the previous state.

FIG. 10 is a schematic illustrating an alternative operating environmentfor the presence detection application 18, according to more exemplaryembodiments. Here the presence detection application 18 reducesbandwidth in a wide area network (WAN) 80 (such as the communicationsnetwork 14) and may also reduce bandwidth in a content supplier'snetwork 82. The presence detection application 18 entirely or partiallystores within the memory 20 of the electronic device 10. A complimentarypresence detection application 84 also operates within the contentsupplier's network 82 (such as within a content server 86). When theelectronic device 10 detects or infers that the user is not present, thepresence detection application 18 enters the low bandwidth state. Thereduced resolution message 56 is sent from the electronic device 10 tothe content supplier's network 82. The reduced resolution message 56routes through the wide area network 80 and informs the contentsupplier's network 82 of the low-bandwidth state.

Here the content supplier's network 82 reduces bandwidth. A deviceoperating in the content supplier's network 82 (such as the contentserver 86) receives the reduced resolution message 56 and reduces thebit rate of the stream 12 of data. That is, the content supplier'snetwork 82 may discard bits to reduce resolution. The content supplier'snetwork 82, therefore, begins transmitting the reduced resolution stream60 of data having a reduced resolution. The reduced resolution stream 60of data routes through the wide area network 80 to the electronic device10. This solution, then, reduces bandwidth in the wide area network 80and may also reduce bandwidth in the content supplier's network 82.

FIG. 11 is a schematic illustrating a solution for a broadband remoteaccess server (BRAS) 90, according to even more exemplary embodiments.The broadband remote access server 90 sets policies for individual usersand each user's allowance of bandwidth consumption. The broadband remoteaccess server 90 also sets policies for individual sessions, regardlessof the user. Here, when the presence detection application 18 infersthat low-bandwidth is desired, a transaction is established with thebroadband remote access server 90. When the electronic device 10 (suchas the set-top box 30) detects or infers that the user is not present,the presence detection application 18 enters the low bandwidth state.The reduced resolution message 56 is sent from the set-top box 30 to thebroadband remote access server 90. The reduced resolution message 56routes through the wide area network 80 and informs the broadband remoteaccess server 90 of the low-bandwidth state.

The broadband remote access server 90 may itself reduce bandwidth. Whenthe broadband remote access server 90 receives the reduced resolutionmessage 56, the broadband remote access server 90 itself reduces the bitrate of the stream 12 of data. That is, the broadband remote accessserver 90 receives the full resolution stream 12 of data and discardsbits to reduce resolution. The broadband remote access server 90,therefore, begins transmitting the reduced resolution stream 60 of datahaving a reduced resolution. The reduced resolution stream 60 of dataroutes through the wide area network 80 to the electronic device 10.This solution reduces bandwidth in the wide area network 80, yet thissolution fails to reduce bandwidth in the content supplier's network 82.

FIG. 12 is a schematic further illustrating the broadband remote accessserver (BRAS) 90, according to still more exemplary embodiments. FIG. 12is similar to FIG. 11, although here the content supplier's network 82is instructed to reduce the resolution of the stream 12 of data. Whenthe electronic device 10 (such as the set-top box 30) detects or infersthat the user is not present, the presence detection application 18enters the low bandwidth state. The reduced resolution message 56, asbefore, routes from the electronic device 10, through the wide areanetwork 80, and to the broadband remote access server 90. The reducedresolution message 56 informs the broadband remote access server 90 ofthe low-bandwidth state.

The broadband remote access server 90 then instructs the contentsupplier to reduce the bit rate of the session. The broadband remoteaccess server 90 sends a message to the content supplier's network 82.The message is received by some controller (such as the content server86). The content server 86 then discards bits from the stream of data(shown as reference numeral 12 in FIG. 10). The message from thebroadband remote access server 90 may simply be a forwarded version ofthe reduced resolution message 56, as FIG. 12 illustrates. The messagefrom the broadband remote access server 90, however, may take any formand have any protocol. Whatever the form, the message instructs orinforms the content server 86 of the low-bandwidth need. The reducedresolution stream 60 of data, having a reduced resolution, routesthrough the wide area network 80 to the electronic device 10. Thissolution, then, reduces bandwidth in both the wide area network 80 andin the content supplier's network 82.

FIG. 13 is a block diagram of exemplary details of the electrical device10 shown in FIGS. 1-12. The electrical device 10 can be any device, suchas an analog/digital recorder, television, CD/DVD player/recorder, audioequipment, receiver, tuner, and/or any other consumer electronic device.The electrical device 10 may also include any computer, peripheraldevice, camera, modem, storage device, telephone, personal digitalassistant, and/or mobile phone. The electrical device 10 may also beconfigured as a set-top box (“STB”) receiver that receives and decodesdigital signals. The electrical device 10, in fact, can be anyelectronic/electrical device that has an input 100 for receiving thestream of data (shown as reference numeral 12 in FIGS. 1-11). The input100 may include a coaxial cable interface 102 for receiving signals viaa coaxial cable (not shown). The input 100 may additionally oralternatively include an interface to a fiber optic line, to a telephoneline (such as an RJ-48/56), to other wiring, and to any male/femalecoupling. The input 100 may even include a wireless transceiver unit forwirelessly receiving transmitted signals. The electrical device 10includes one or more processors 104 executing instructions 106 stored ina system memory device. The instructions 106, for example, are shownresiding in a memory subsystem 108. The instructions 106, however, couldalso reside in flash memory 110 or a peripheral storage device 112. Whenthe processor 104 executes the instructions 106, the processor 104 mayalso consult the presence detection application 18 stored in the systemmemory device. The one or more processors 104 may also execute anoperating system that controls the internal functions of the electricaldevice 10. A bus 114 may communicate signals, such as data signals,control signals, and address signals, between the processor 104 and acontroller 116. The controller 116 provides a bridging function betweenthe one or more processors 104, any graphics subsystem 118 (if desired),the memory subsystem 108, and, if needed, a peripheral bus 120. Theperipheral bus 120 may be controlled by the controller 116, or theperipheral bus 90 may have a separate peripheral bus controller 122. Theperipheral bus controller 122 serves as an input/output hub for variousports. These ports include the input terminal 100 and perhaps at leastone output terminal. The ports may also include a serial and/or parallelport 124, a keyboard port 126, and a mouse port 128. The ports may alsoinclude one or more external device ports 130, networking ports 132(such as Ethernet), and a USB port 134. The electrical device 10 mayalso include an audio subsystem 136. The electrical device 10 may alsoinclude a display device (such as LED, LCD, plasma, or any other) topresent instructions, messages, tutorials, and other information to auser. The electrical device 10 may further include one or more encoders,one or more decoders, input/output control, logic, one or morereceivers/transmitters/transceivers, one or more clock generators, oneor more Ethernet/LAN interfaces, one or more analog-to-digitalconverters, one or more digital-to-analog converters, one or more“Firewire” interfaces, one or more modem interfaces, and/or one or morePCMCIA interfaces. Those of ordinary skill in the art understand thatthe program, processes, methods, and systems described herein are notlimited to any particular architecture or hardware.

The processors 104 may be implemented with a digital signal processor(DSP) and/or a microprocessor. Advanced Micro Devices, Inc., forexample, manufactures a full line of microprocessors (Advanced MicroDevices, Inc., One AMD Place, P.O. Box 3453, Sunnyvale, Calif.94088-3453, 408.732.2400, 800.538.8450, www.amd.com). The IntelCorporation also manufactures a family of microprocessors (IntelCorporation, 2200 Mission College Blvd., Santa Clara, Calif. 95052-8119,408.765.8080, www.intel.com). Other manufacturers also offermicroprocessors. Such other manufacturers include Motorola, Inc. (1303East Algonquin Road, P.O. Box A3309 Schaumburg, Ill. 60196,www.Motorola.com), International Business Machines Corp. (New OrchardRoad, Armonk, N.Y. 10504, (914) 499-1900, www.ibm.com), and TransmetaCorp. (3940 Freedom Circle, Santa Clara, Calif. 95054,www.transmeta.com). Texas Instruments offers a wide variety of digitalsignal processors (Texas Instruments, Incorporated, P.O. Box 660199,Dallas, Tex. 75266-0199, Phone: 972-995-2011, www.ti.com) as well asMotorola (Motorola, Incorporated, 1303 E. Algonquin Road, Schaumburg,Ill. 60196, Phone 847-576-5000, www.motorola.com). There are, in fact,many manufacturers and designers of digital signal processors,microprocessors, controllers, and other componentry that are describedin this patent. Those of ordinary skill in the art understand that thiscomponentry may be implemented using any suitable design, architecture,and manufacture. Those of ordinary skill in the art, then understandthat the exemplary embodiments are not limited to any particularmanufacturer's component, or architecture, or manufacture.

The memory (shown as memory subsystem 108, flash memory 110, orperipheral storage device 112) may also contain an application program.The application program cooperates with the operating system and with avideo display device to provide a Graphical User Interface (GUI). Thegraphical user interface provides a convenient visual and/or audibleinterface with a user of the electrical device 10.

FIG. 14 is a schematic illustrating still more exemplary embodiments.FIG. 14 illustrates that the electronic device 10 may include varioustypes of devices. The presence detection application 18 operates withinany of these various types of devices. FIG. 14, for example, illustratesthat the presence detection application 18 may entirely or partiallyoperate within a personal digital assistant (PDA) 140, a GlobalPositioning System (GPS) device 141, an interactive television 142, anInternet Protocol (IP) phone 143, a pager 144, a cellular/satellitephone 145, or any computer system and/or communications device utilizinga digital signal processor (DSP) 146. The electronic device 10 may alsoinclude watches, radios, vehicle electronics, clocks, printers,gateways, and other apparatuses and systems.

FIGS. 15-17 are schematics further illustrating the electronic device 10storing the presence detection application 18, according to exemplaryembodiments. FIG. 15 is a block diagram of a Subscriber Identity Module150, while FIGS. 16 and 17 illustrate, respectively, the SubscriberIdentity Module 150 embodied in a plug 152 and the Subscriber IdentityModule 150 embodied in a card 154. As those of ordinary skill in the artrecognize, the Subscriber Identity Module 150 may be used in conjunctionwith many electronic devices (such as the electronic devices shown inFIG. 14). The Subscriber Identity Module 150 stores user information(such as the user's International Mobile Subscriber Identity, the user'sK_(i) number, and other user information) and any portion of thepresence detection application 18. As those of ordinary skill in the artalso recognize, the plug 152 and the card 154 each interface with thecommunications device according to GSM Standards 2.17 and 11.11 and ISOStandard 7816, with each incorporated herein by reference. The GSMStandard 2.17 is formally known as “European digital cellulartelecommunications system (Phase 1); Subscriber Identity Modules,Functional Characteristics (GSM 02.17 V3.2.0 (1995-01)).” The GSMStandard 11.11 is formally known as “Digital cellular telecommunicationssystem (Phase 2+) (GSM); Specification of the Subscriber IdentityModule—Mobile Equipment (Subscriber Identity Module—ME) interface (GSM11.11 V5.3.0 (1996-07)).” Both GSM standards are available from theEuropean Telecommunication Standards Institute (650 route des Lucioles,06921 Sophia-Antipolis Cedex, FRANCE, Tel.: +33 (0)4 92 94 42 00, Fax:+33 (0)4 93 65 47 16, www.etsi.org). The ISO Standard 7816 is formallyknown as “Information technology—Identification cards—Integratedcircuit(s) cards with contacts,” and the standard is available from theInternational Organization for Standardization (ISO) (1, rue de Varembé,Case, postale 56CH-1211 Geneva 20, Switzerland, Telephone +41 22 749 0111, Telefax +41 22 733 34 30, www.iso.org).

FIG. 15 is a block diagram of the Subscriber Identity Module 150,whether embodied as the plug 152 of FIG. 16 or as the card 154 of FIG.17. Here the Subscriber Identity Module 150 comprises a microprocessor156 (μP) communicating with memory modules 158 via a data bus 160. Thememory modules may include Read Only Memory (ROM) 162, Random AccessMemory (RAM) and or flash memory 164, and ElectricallyErasable-Programmable Read Only Memory (EEPROM) 166. The SubscriberIdentity Module 150 stores some or all of the presence detectionapplication 18 in one or more of the memory modules 158. FIG. 15 showsthe presence detection application 18 residing in theErasable-Programmable Read Only Memory 166, yet the presence detectionapplication 18 could alternatively or additionally reside in the ReadOnly Memory 162 and/or the Random Access/Flash Memory 164. AnInput/Output module 168 handles communication between the SubscriberIdentity Module 150 and the electronic device. As those skilled in theart will appreciate, there are many suitable ways for implementing theoperation and physical/memory structure of the Subscriber IdentityModule. If, however, the reader desires more information on theSubscriber Identity Module, the reader is directed to the followingsources: LAWRENCE HARTE et al., GSM SUPERPHONES 99-100, 113-14 (1999);SIEGMUND REDL et al., GSM AND PERSONAL COMMUNICATIONS HANDBOOK 303-69(1998); and JOACHIM TISAL, GSM CELLULAR RADIO TELEPHONY 99-130 (1997),with each incorporated herein by reference.

FIG. 18 is a schematic further illustrating the electronic device 10,according to exemplary embodiments. FIG. 18 is an alternative blockdiagram of the electronic device 10 storing the presence detectionapplication 18. Here the electronic device 10 comprises a radiotransceiver unit 172, an antenna 174, a digital baseband chipset 176,and a man/machine interface (MMI) 178. The transceiver unit 172 includestransmitter circuitry 180 and receiver circuitry 182 for receiving andtransmitting signals. The transceiver unit 172 couples to the antenna174 for converting electrical current to and from electromagnetic waves.The digital baseband chipset 176 contains a digital signal processor(DSP) 184 and performs signal processing functions for audio (voice)signals and RF signals. As FIG. 14 shows, the digital baseband chipset176 may also include an on-board microprocessor 186 that interacts withthe man/machine interface (MMI) 178. The man/machine interface (MMI) 178may comprise a display device 188, a keypad 190, and the SubscriberIdentity Module 150. The on-board microprocessor 186 performs GSMprotocol functions and control functions for the radio circuitry 180 and182, for the display device 188, and for the keypad 190. The on-boardmicroprocessor 186 may also interface with the Subscriber IdentityModule 150 and with the presence detection application 18 residing inthe memory module 158 of the Subscriber Identity Module 150. Thoseskilled in the art will appreciate that there may be many suitablearchitectural configurations for the elements of the electronic device10. If the reader desires a more detailed explanation, the reader isinvited to consult the following sources: LAWRENCE HARTE et al., GSMSUPERPHONES 105-120 (1999); SIEGMUND REDL et al., GSM AND PERSONALCOMMUNICATIONS HANDBOOK 389-474 (1998); and JOACHIM TISAL, GSM CELLULARRADIO TELEPHONY 99-130 (1997), with each incorporated herein byreference.

The presence detection application 18 may be utilized regardless ofsignaling standard. As those of ordinary skill in the art recognize,FIGS. 15-18 illustrate the electronic device 10 utilizing a GlobalSystem for Mobile (GSM) standard. That is, the electronic device 10utilizes the Global System for Mobile (GSM) communications signalingstandard. Those of ordinary skill in the art, however, also recognizethat the presence detection application 18 may be utilized with the TimeDivision Multiple Access signaling standard, the Code Division MultipleAccess signaling standard, the “dual-mode” GSM-ANSI InteroperabilityTeam (GAIT) signaling standard, or any variant of the GSM/ICDMA/TDMAsignaling standard.

FIG. 19 is a flowchart illustrating a method of conserving bandwidth,according to exemplary embodiments. Inputs to a user interface areaccumulated in memory (Block 200). State information is received, andthe state information comprises advertisement insertion information(Block 202). The accumulated inputs are compared to a historical patternof inputs (Block 204). The historical pattern of inputs describes anexpected activity of inputs occurring after a transition in content(Block 206). When inputs are accumulated, the method predicts that auser is present (Block 208). When inputs are expected, but no inputs arereceived during transition to an advertisement, then the method predictsthat no user is present and conserves bandwidth (Block 210). Apreference of the user may be retrieved for conserving bandwidth (Block212). A message may be sent that ceases delivery of a stream of data andretrieves content locally stored in memory (Block 214). A message mayadditionally or alternatively be sent that reduces resolution of a videoportion of a received stream of data (Block 216). A stream of data maybe tagged to indicate a point at which the stream was degraded toconserve bandwidth (Block 218). If an input is received after bandwidthis conserved, then full resolution of a stream of data is resumed (Block220).

The presence detection application 18 may be physically embodied on orin a computer-readable medium. This computer-readable medium may includeCD-ROM, DVD, tape, cassette, floppy disk, memory card, andlarge-capacity disk (such as IOMEGA®, ZIP®, JAZZ®, and otherlarge-capacity memory products (IOMEGA®, ZIP®, and JAZZ® are registeredtrademarks of Iomega Corporation, 1821 W. Iomega Way, Roy, Utah 84067,801.332.1000, www.iomega.com). This computer-readable medium, or media,could be distributed to end-users, licensees, and assignees. These typesof computer-readable media, and other types not mention here butconsidered within the scope of the embodiments, allow the presencedetection application 18 to be easily disseminated. A computer programproduct for conserving bandwidth comprises the computer-readable medium,and the presence detection application stores on the computer-readablemedium. The presence detection application comprises computer code fordetecting, inferring, and/or predicting the physical presence of a user.If the physical presence of the user is determined, then afull-resolution stream of data is delivered to an electrical device. If,however, the physical presence of the user cannot be detected, inferred,or predicted, then the resolution of the stream of data is reduced, orthe stream is even terminated, to conserve bandwidth.

The presence detection application 18 may also be physically embodied onor in any addressable (e.g., HTTP, IEEE 802.11, Wireless ApplicationProtocol (WAP)) wire line or wireless device capable of presenting an IPaddress. Examples could include a computer, a wireless personal digitalassistant (PDA), an Internet Protocol mobile phone, or a wireless pager.

While the exemplary embodiments have been described with respect tovarious features, aspects, and embodiments, those skilled and unskilledin the art will recognize the exemplary embodiments are not so limited.Other variations, modifications, and alternative embodiments may be madewithout departing from the spirit and scope of the exemplaryembodiments.

What is claimed is:
 1. A method, comprising: accumulating in memoryinputs received over time via a user interface of an electronic device;determining a historical pattern from the inputs, the historical patterncomprising behavioral patterns of a user of the electronic device withrespect to the inputs; determining whether a next input to the userinterface is expected for currently streamed data over a network to theelectronic device, the determining in response to the inputs receivedover time, the historical pattern, and whether the currently streameddata is commercial-free content indicating that the next input is notexpected for a duration of the commercial-free content; predicting thatthe user is not present if the next input to the user interface isexpected and is not received; predicting that the user is present andthe next input is not expected if the currently streamed data is thecommercial-free content; and conserving bandwidth, with respect to thecurrently streamed data, in response to predicting that the user is notpresent.
 2. The method according to claim 1, wherein the conservingbandwidth comprises: sending a message that ceases delivery of thecurrently streamed data to the electronic device; retrieving contentlocally stored in the memory in response to the message that ceasesdelivery of the currently streamed data; and replacing the currentlystreamed data with the content locally stored in the memory.
 3. Themethod according to claim 1, wherein the conserving bandwidth comprisessending a message that reduces resolution of a video portion of thecurrently streamed data to the electronic device.
 4. The methodaccording to claim 1, wherein the conserving bandwidth comprisesretrieving a preference of the user configured to conserve thebandwidth.
 5. The method according to claim 1, wherein the historicalpattern describes an expected activity occurring after a transition incontent.
 6. The method according to claim 1, wherein the conservingbandwidth, with respect to currently streamed data, in response topredicting that the user is not present further comprises: applying atag to the currently streamed data at a point in which a resolution ofthe currently streamed data is reduced; and upon determining the nextinput is received at the user interface after the resolution is reduced,resuming, using the tag, full resolution of the currently streamed datato the electronic device from the point in which the resolution of thecurrently streamed data was reduced.
 7. A device, comprising: a memorycomprising computer-executable instructions; a user interface; and aprocessor executing the computer-executable instructions, thecomputer-executable instructions, when executed by the processor, causethe processor to perform operations comprising: accumulating inputs,received over time via the user interface, in the memory; determining ahistorical pattern from the inputs, the historical pattern comprisingbehavioral patterns of a user of the device with respect to the inputs;determining whether a next input to the user interface is expected forcurrently streamed data over a network to the device, the determining inresponse to the inputs received over time, the historical pattern, andwhether the currently streamed data is commercial-free contentindicating that the next input is not expected for a duration of thecommercial-free content; predicting that the user is not present if thenext input to the user interface is expected and the next input is notreceived; predicting that the user is present and the next input is notexpected if the currently streamed data is the commercial-free content;and conserving bandwidth, with respect to the currently streamed data,in response to predicting that the user is not present.
 8. The deviceaccording to claim 7, wherein the conserving bandwidth comprises:sending a message that ceases delivery of the currently streamed data tothe device; retrieving content locally stored in the memory in responseto the message that ceases delivery of the currently streamed data; andreplacing the currently streamed data with the content locally stored inthe memory.
 9. The device according to claim 7, wherein the conservingbandwidth comprises sending a message that reduces resolution of a videoportion of the currently streamed data to the device.
 10. The deviceaccording to claim 7, wherein the conserving bandwidth comprisesretrieving a preference of the user configured to conserve thebandwidth.
 11. The device according to claim 7, wherein the historicalpattern describes an expected activity occurring after a transition incontent.
 12. The device according to claim 7, wherein the conservingbandwidth, with respect to currently streamed data, in response topredicting that the user is not present further comprises: applying atag to the currently streamed data at a point in which a resolution ofthe currently streamed data is reduced; and upon determining the nextinput is received at the user interface after the resolution is reduced,resuming, using the tag, full resolution of the currently streamed datato the device from the point in which the resolution of the currentlystreamed data was reduced.
 13. A computer program product embodied on anon-transitory computer readable medium, the computer program productincluding instructions that, when executed by a computer, causes thecomputer to perform operations comprising: accumulating in memory inputsreceived over time via a user interface of an electronic device;determining a historical pattern from the inputs, the historical patterncomprising behavioral patterns of a user of the electronic device withrespect to the inputs; determining whether a next input to the userinterface is expected for currently streamed data over a network to theelectronic device, the determining in response to the inputs receivedover time, the historical pattern, and whether the currently streameddata is commercial-free content indicating that the next input is notexpected for a duration of the commercial-free content; predicting thatthe user is not present if the next input to the user interface isexpected and the next input is not received; predicting that the user ispresent and the next input is not expected if the currently streameddata is the commercial-free content; and conserving bandwidth, withrespect to the currently streamed data, in response to predicting thatthe user is not present.
 14. The computer program product of claim 13,wherein the conserving bandwidth comprises: sending a message thatceases delivery of the currently streamed data to the electronic device;retrieving content locally stored in the memory in response to themessage that ceases delivery of the currently streamed data; andreplacing the currently streamed data with the content locally stored inthe memory.
 15. The computer program product of claim 13, wherein theconserving bandwidth comprises sending a message that reduces resolutionof a video portion of the currently streamed data to the electronicdevice.
 16. The computer program product of claim 13, wherein theconserving bandwidth comprises retrieving a preference of the user forconserving the bandwidth.
 17. The computer program product of claim 13,wherein the historical pattern describes an expected activity occurringafter a transition in content.
 18. The method of claim 1, wherein theinputs include a channel change, a cursor movement, and a volumecommand.
 19. The method of claim 1, further comprising: receiving acurrent state of the electronic device, the current state including adescription of content transmitted to the electronic device; wherein thehistorical pattern is determined by logging the current state of theelectronic device over time.
 20. The method of claim 1, wherein thehistorical pattern is determined using modal information reflecting acurrent mode of operation of the electronic device, the mode ofoperation including broadband mode, broadcast mode, and auxiliary mode,the inputs comprising switching between the broadband mode, thebroadcast mode, and the auxiliary mode.